Micron Document
🎖️GitЯра🎖️


Displaying Raw • Download

app/src/main/java/com/geeksville/mesh/database/entity/NodeEntity.kt ui_message_list (be3f882f) Text, 8.35 KB

T8b949e/*
* Copyright (c) 2025 Meshtastic LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/

Tff7b72package T7ee787com.geeksville.mesh.database.entity

Tff7b72import T7ee787androidx.room.ColumnInfo
Tff7b72import T7ee787androidx.room.Embedded
Tff7b72import T7ee787androidx.room.Entity
Tff7b72import T7ee787androidx.room.Index
Tff7b72import T7ee787androidx.room.PrimaryKey
Tff7b72import T7ee787androidx.room.Relation
Tff7b72import T7ee787com.geeksville.mesh.DeviceMetrics
Tff7b72import T7ee787com.geeksville.mesh.EnvironmentMetrics
Tff7b72import T7ee787com.geeksville.mesh.MeshProtos
Tff7b72import T7ee787com.geeksville.mesh.MeshUser
Tff7b72import T7ee787com.geeksville.mesh.NodeInfo
Tff7b72import T7ee787com.geeksville.mesh.PaxcountProtos
Tff7b72import T7ee787com.geeksville.mesh.Position
Tff7b72import T7ee787com.geeksville.mesh.TelemetryProtos
Tff7b72import T7ee787com.geeksville.mesh.copy
Tff7b72import T7ee787com.geeksville.mesh.model.Node
Tff7b72import T7ee787com.geeksville.mesh.util.onlineTimeThreshold
Tff7b72import T7ee787com.google.protobuf.ByteString
Tff7b72import T7ee787com.google.protobuf.kotlin.isNotEmpty

Tff7b72data Tff7b72class T56d364NodeWithRelationsTb4b4b4(
Tf0883e@Embedded Tff7b72val Te6edf3nodeTb4b4b4: Te6edf3NodeEntityTb4b4b4,
Tf0883e@RelationTb4b4b4(Te6edf3entity Tff7b72= Te6edf3MetadataEntityTff7b72::Te6edf3classTb4b4b4, Te6edf3parentColumn Tff7b72= Ta5d6ff"Ta5d6ffnumTa5d6ff"Tb4b4b4, Te6edf3entityColumn Tff7b72= Ta5d6ff"Ta5d6ffnumTa5d6ff"Tb4b4b4)
Tff7b72val Te6edf3metadataTb4b4b4: Te6edf3MetadataEntity? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4) Tb4b4b4{
Tff7b72fun Td2a8fftoModelTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3withTb4b4b4(Te6edf3nodeTb4b4b4) Tb4b4b4{
Te6edf3NodeTb4b4b4(
Te6edf3num Tff7b72= Te6edf3numTb4b4b4,
Te6edf3metadata Tff7b72= Te6edf3metadataTff7b72?.Te6edf3protoTb4b4b4,
Te6edf3user Tff7b72= Te6edf3userTb4b4b4,
Te6edf3position Tff7b72= Te6edf3positionTb4b4b4,
Te6edf3snr Tff7b72= Te6edf3snrTb4b4b4,
Te6edf3rssi Tff7b72= Te6edf3rssiTb4b4b4,
Te6edf3lastHeard Tff7b72= Te6edf3lastHeardTb4b4b4,
Te6edf3deviceMetrics Tff7b72= Te6edf3deviceTelemetryTb4b4b4.Te6edf3deviceMetricsTb4b4b4,
Te6edf3channel Tff7b72= Te6edf3channelTb4b4b4,
Te6edf3viaMqtt Tff7b72= Te6edf3viaMqttTb4b4b4,
Te6edf3hopsAway Tff7b72= Te6edf3hopsAwayTb4b4b4,
Te6edf3isFavorite Tff7b72= Te6edf3isFavoriteTb4b4b4,
Te6edf3isIgnored Tff7b72= Te6edf3isIgnoredTb4b4b4,
Te6edf3environmentMetrics Tff7b72= Te6edf3environmentTelemetryTb4b4b4.Te6edf3environmentMetricsTb4b4b4,
Te6edf3powerMetrics Tff7b72= Te6edf3powerTelemetryTb4b4b4.Te6edf3powerMetricsTb4b4b4,
Te6edf3paxcounter Tff7b72= Te6edf3paxcounterTb4b4b4,
Te6edf3notes Tff7b72= Te6edf3notesTb4b4b4,
Tb4b4b4)
Tb4b4b4}

Tff7b72fun Td2a8fftoEntityTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3withTb4b4b4(Te6edf3nodeTb4b4b4) Tb4b4b4{
Te6edf3NodeEntityTb4b4b4(
Te6edf3num Tff7b72= Te6edf3numTb4b4b4,
Te6edf3user Tff7b72= Te6edf3userTb4b4b4,
Te6edf3position Tff7b72= Te6edf3positionTb4b4b4,
Te6edf3snr Tff7b72= Te6edf3snrTb4b4b4,
Te6edf3rssi Tff7b72= Te6edf3rssiTb4b4b4,
Te6edf3lastHeard Tff7b72= Te6edf3lastHeardTb4b4b4,
Te6edf3deviceTelemetry Tff7b72= Te6edf3deviceTelemetryTb4b4b4,
Te6edf3channel Tff7b72= Te6edf3channelTb4b4b4,
Te6edf3viaMqtt Tff7b72= Te6edf3viaMqttTb4b4b4,
Te6edf3hopsAway Tff7b72= Te6edf3hopsAwayTb4b4b4,
Te6edf3isFavorite Tff7b72= Te6edf3isFavoriteTb4b4b4,
Te6edf3isIgnored Tff7b72= Te6edf3isIgnoredTb4b4b4,
Te6edf3environmentTelemetry Tff7b72= Te6edf3environmentTelemetryTb4b4b4,
Te6edf3powerTelemetry Tff7b72= Te6edf3powerTelemetryTb4b4b4,
Te6edf3paxcounter Tff7b72= Te6edf3paxcounterTb4b4b4,
Te6edf3notes Tff7b72= Te6edf3notesTb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tb4b4b4}

Tf0883e@EntityTb4b4b4(Te6edf3tableName Tff7b72= Ta5d6ff"Ta5d6ffmetadataTa5d6ff"Tb4b4b4, Te6edf3indices Tff7b72= Tff7b72[Te6edf3IndexTb4b4b4(Te6edf3value Tff7b72= Tff7b72[Ta5d6ff"Ta5d6ffnumTa5d6ff"Tff7b72]Tb4b4b4)Tff7b72]Tb4b4b4)
Tff7b72data Tff7b72class T56d364MetadataEntityTb4b4b4(
Tf0883e@PrimaryKey Tff7b72val Te6edf3numTb4b4b4: Tffa657IntTb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffprotoTa5d6ff"Tb4b4b4, Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4) Tff7b72val Te6edf3protoTb4b4b4: Te6edf3MeshProtosTb4b4b4.Te6edf3DeviceMetadataTb4b4b4,
Tff7b72val Te6edf3timestampTb4b4b4: Tffa657Long Tff7b72= Te6edf3SystemTb4b4b4.Te6edf3currentTimeMillisTb4b4b4(Tb4b4b4)Tb4b4b4,
Tb4b4b4)

Tf0883e@SuppressTb4b4b4(Ta5d6ff"Ta5d6ffMagicNumberTa5d6ff"Tb4b4b4)
Tf0883e@EntityTb4b4b4(Te6edf3tableName Tff7b72= Ta5d6ff"Ta5d6ffnodesTa5d6ff"Tb4b4b4)
Tff7b72data Tff7b72class T56d364NodeEntityTb4b4b4(
Tf0883e@PrimaryKeyTb4b4b4(Te6edf3autoGenerate Tff7b72= Tff7b72falseTb4b4b4) Tff7b72val Te6edf3numTb4b4b4: Tffa657IntTb4b4b4, T8b949e// This is immutable, and used as a key
Tf0883e@ColumnInfoTb4b4b4(Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4) Tff7b72var Te6edf3userTb4b4b4: Te6edf3MeshProtosTb4b4b4.Te6edf3User Tff7b72= Te6edf3MeshProtosTb4b4b4.Te6edf3UserTb4b4b4.Te6edf3getDefaultInstanceTb4b4b4(Tb4b4b4)Tb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6fflong_nameTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3longNameTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffshort_nameTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3shortNameTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4, T8b949e// used in includeUnknown filter
Tf0883e@ColumnInfoTb4b4b4(Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4)
Tff7b72var Te6edf3positionTb4b4b4: Te6edf3MeshProtosTb4b4b4.Te6edf3Position Tff7b72= Te6edf3MeshProtosTb4b4b4.Te6edf3PositionTb4b4b4.Te6edf3getDefaultInstanceTb4b4b4(Tb4b4b4)Tb4b4b4,
Tff7b72var Te6edf3latitudeTb4b4b4: Tffa657Double Tff7b72= T79c0ff0.0Tb4b4b4,
Tff7b72var Te6edf3longitudeTb4b4b4: Tffa657Double Tff7b72= T79c0ff0.0Tb4b4b4,
Tff7b72var Te6edf3snrTb4b4b4: Tffa657Float Tff7b72= Tffa657FloatTb4b4b4.Te6edf3MAX_VALUETb4b4b4,
Tff7b72var Te6edf3rssiTb4b4b4: Tffa657Int Tff7b72= Tffa657IntTb4b4b4.Te6edf3MAX_VALUETb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6fflast_heardTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3lastHeardTb4b4b4: Tffa657Int Tff7b72= T79c0ff0Tb4b4b4, T8b949e// the last time we've seen this node in secs since 1970
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffdevice_metricsTa5d6ff"Tb4b4b4, Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4)
Tff7b72var Te6edf3deviceTelemetryTb4b4b4: Te6edf3TelemetryProtosTb4b4b4.Te6edf3Telemetry Tff7b72= Te6edf3TelemetryProtosTb4b4b4.Te6edf3TelemetryTb4b4b4.Te6edf3getDefaultInstanceTb4b4b4(Tb4b4b4)Tb4b4b4,
Tff7b72var Te6edf3channelTb4b4b4: Tffa657Int Tff7b72= T79c0ff0Tb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffvia_mqttTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3viaMqttTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffhops_awayTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3hopsAwayTb4b4b4: Tffa657Int Tff7b72= Tff7b72-T79c0ff1Tb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffis_favoriteTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3isFavoriteTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffis_ignoredTa5d6ff"Tb4b4b4, Te6edf3defaultValue Tff7b72= Ta5d6ff"Ta5d6ff0Ta5d6ff"Tb4b4b4) Tff7b72var Te6edf3isIgnoredTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffenvironment_metricsTa5d6ff"Tb4b4b4, Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4)
Tff7b72var Te6edf3environmentTelemetryTb4b4b4: Te6edf3TelemetryProtosTb4b4b4.Te6edf3Telemetry Tff7b72= Te6edf3TelemetryProtosTb4b4b4.Te6edf3TelemetryTb4b4b4.Te6edf3newBuilderTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3buildTb4b4b4(Tb4b4b4)Tb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffpower_metricsTa5d6ff"Tb4b4b4, Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4)
Tff7b72var Te6edf3powerTelemetryTb4b4b4: Te6edf3TelemetryProtosTb4b4b4.Te6edf3Telemetry Tff7b72= Te6edf3TelemetryProtosTb4b4b4.Te6edf3TelemetryTb4b4b4.Te6edf3getDefaultInstanceTb4b4b4(Tb4b4b4)Tb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3typeAffinity Tff7b72= Te6edf3ColumnInfoTb4b4b4.Te6edf3BLOBTb4b4b4)
Tff7b72var Te6edf3paxcounterTb4b4b4: Te6edf3PaxcountProtosTb4b4b4.Te6edf3Paxcount Tff7b72= Te6edf3PaxcountProtosTb4b4b4.Te6edf3PaxcountTb4b4b4.Te6edf3getDefaultInstanceTb4b4b4(Tb4b4b4)Tb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffpublic_keyTa5d6ff"Tb4b4b4) Tff7b72var Te6edf3publicKeyTb4b4b4: Te6edf3ByteString? Tff7b72= Tff7b72nullTb4b4b4,
Tf0883e@ColumnInfoTb4b4b4(Te6edf3name Tff7b72= Ta5d6ff"Ta5d6ffnotesTa5d6ff"Tb4b4b4, Te6edf3defaultValue Tff7b72= Ta5d6ff"Ta5d6ff"Tb4b4b4) Tff7b72var Te6edf3notesTb4b4b4: Tffa657String Tff7b72= Ta5d6ff"Ta5d6ff"Tb4b4b4,
Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3deviceMetricsTb4b4b4: Te6edf3TelemetryProtosTb4b4b4.Te6edf3DeviceMetrics
Tff7b72getTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3deviceTelemetryTb4b4b4.Te6edf3deviceMetrics

Tff7b72val Te6edf3environmentMetricsTb4b4b4: Te6edf3TelemetryProtosTb4b4b4.Te6edf3EnvironmentMetrics
Tff7b72getTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3environmentTelemetryTb4b4b4.Te6edf3environmentMetrics

Tff7b72val Te6edf3isUnknownUser
Tff7b72getTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3userTb4b4b4.Te6edf3hwModel Tff7b72=Tff7b72= Te6edf3MeshProtosTb4b4b4.Te6edf3HardwareModelTb4b4b4.Te6edf3UNSET

Tff7b72val Te6edf3hasPKC
Tff7b72getTb4b4b4(Tb4b4b4) Tff7b72= Tb4b4b4(Te6edf3publicKey Tff7b72?: Te6edf3userTb4b4b4.Te6edf3publicKeyTb4b4b4)Tb4b4b4.Te6edf3isNotEmptyTb4b4b4(Tb4b4b4)

Tff7b72fun Td2a8ffsetPositionTb4b4b4(Te6edf3pTb4b4b4: Te6edf3MeshProtosTb4b4b4.Te6edf3PositionTb4b4b4, Te6edf3defaultTimeTb4b4b4: Tffa657Int Tff7b72= Te6edf3currentTimeTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3position Tff7b72= Te6edf3pTb4b4b4.Te6edf3copy Tb4b4b4{ Te6edf3time Tff7b72= Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3time Tff7b72!Tff7b72= T79c0ff0Tb4b4b4) Te6edf3pTb4b4b4.Te6edf3time Tff7b72else Te6edf3defaultTime Tb4b4b4}
Te6edf3latitude Tff7b72= Te6edf3degDTb4b4b4(Te6edf3pTb4b4b4.Te6edf3latitudeITb4b4b4)
Te6edf3longitude Tff7b72= Te6edf3degDTb4b4b4(Te6edf3pTb4b4b4.Te6edf3longitudeITb4b4b4)
Tb4b4b4}

T8b949e/** true if the device was heard from recently */
Tff7b72val Te6edf3isOnlineTb4b4b4: Tffa657Boolean
Tff7b72getTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72return Te6edf3lastHeard Tff7b72> Te6edf3onlineTimeThresholdTb4b4b4(Tb4b4b4)
Tb4b4b4}

Tff7b72companion Tff7b72object Tb4b4b4{
T8b949e// Convert to a double representation of degrees
Tff7b72fun Td2a8ffdegDTb4b4b4(Te6edf3iTb4b4b4: Tffa657IntTb4b4b4) Tff7b72= Te6edf3i Tff7b72* T79c0ff1e-7

Tff7b72fun Td2a8ffdegITb4b4b4(Te6edf3dTb4b4b4: Tffa657DoubleTb4b4b4) Tff7b72= Tb4b4b4(Te6edf3d Tff7b72* T79c0ff1Te6edf3e7Tb4b4b4)Tb4b4b4.Te6edf3toIntTb4b4b4(Tb4b4b4)

Tff7b72val Te6edf3ERROR_BYTE_STRINGTb4b4b4: Te6edf3ByteString Tff7b72= Te6edf3ByteStringTb4b4b4.Te6edf3copyFromTb4b4b4(Te6edf3ByteArrayTb4b4b4(T79c0ff3T79c0ff2Tb4b4b4) Tb4b4b4{ T79c0ff0 Tb4b4b4}Tb4b4b4)

Tff7b72fun Td2a8ffcurrentTimeTb4b4b4(Tb4b4b4) Tff7b72= Tb4b4b4(Te6edf3SystemTb4b4b4.Te6edf3currentTimeMillisTb4b4b4(Tb4b4b4) Tff7b72/ T79c0ff1T79c0ff0T79c0ff0T79c0ff0Tb4b4b4)Tb4b4b4.Te6edf3toIntTb4b4b4(Tb4b4b4)
Tb4b4b4}

Tff7b72fun Td2a8fftoModelTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3NodeTb4b4b4(
Te6edf3num Tff7b72= Te6edf3numTb4b4b4,
Te6edf3user Tff7b72= Te6edf3userTb4b4b4,
Te6edf3position Tff7b72= Te6edf3positionTb4b4b4,
Te6edf3snr Tff7b72= Te6edf3snrTb4b4b4,
Te6edf3rssi Tff7b72= Te6edf3rssiTb4b4b4,
Te6edf3lastHeard Tff7b72= Te6edf3lastHeardTb4b4b4,
Te6edf3deviceMetrics Tff7b72= Te6edf3deviceTelemetryTb4b4b4.Te6edf3deviceMetricsTb4b4b4,
Te6edf3channel Tff7b72= Te6edf3channelTb4b4b4,
Te6edf3viaMqtt Tff7b72= Te6edf3viaMqttTb4b4b4,
Te6edf3hopsAway Tff7b72= Te6edf3hopsAwayTb4b4b4,
Te6edf3isFavorite Tff7b72= Te6edf3isFavoriteTb4b4b4,
Te6edf3isIgnored Tff7b72= Te6edf3isIgnoredTb4b4b4,
Te6edf3environmentMetrics Tff7b72= Te6edf3environmentTelemetryTb4b4b4.Te6edf3environmentMetricsTb4b4b4,
Te6edf3powerMetrics Tff7b72= Te6edf3powerTelemetryTb4b4b4.Te6edf3powerMetricsTb4b4b4,
Te6edf3paxcounter Tff7b72= Te6edf3paxcounterTb4b4b4,
Te6edf3publicKey Tff7b72= Te6edf3publicKey Tff7b72?: Te6edf3userTb4b4b4.Te6edf3publicKeyTb4b4b4,
Te6edf3notes Tff7b72= Te6edf3notesTb4b4b4,
Tb4b4b4)

Tff7b72fun Td2a8fftoNodeInfoTb4b4b4(Tb4b4b4) Tff7b72= Te6edf3NodeInfoTb4b4b4(
Te6edf3num Tff7b72= Te6edf3numTb4b4b4,
Te6edf3user Tff7b72=
Te6edf3MeshUserTb4b4b4(
Te6edf3id Tff7b72= Te6edf3userTb4b4b4.Te6edf3idTb4b4b4,
Te6edf3longName Tff7b72= Te6edf3userTb4b4b4.Te6edf3longNameTb4b4b4,
Te6edf3shortName Tff7b72= Te6edf3userTb4b4b4.Te6edf3shortNameTb4b4b4,
Te6edf3hwModel Tff7b72= Te6edf3userTb4b4b4.Te6edf3hwModelTb4b4b4,
Te6edf3role Tff7b72= Te6edf3userTb4b4b4.Te6edf3roleValueTb4b4b4,
Tb4b4b4)
Tb4b4b4.Te6edf3takeIf Tb4b4b4{ Te6edf3userTb4b4b4.Te6edf3idTb4b4b4.Te6edf3isNotEmptyTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4,
Te6edf3position Tff7b72=
Te6edf3PositionTb4b4b4(
Te6edf3latitude Tff7b72= Te6edf3latitudeTb4b4b4,
Te6edf3longitude Tff7b72= Te6edf3longitudeTb4b4b4,
Te6edf3altitude Tff7b72= Te6edf3positionTb4b4b4.Te6edf3altitudeTb4b4b4,
Te6edf3time Tff7b72= Te6edf3positionTb4b4b4.Te6edf3timeTb4b4b4,
Te6edf3satellitesInView Tff7b72= Te6edf3positionTb4b4b4.Te6edf3satsInViewTb4b4b4,
Te6edf3groundSpeed Tff7b72= Te6edf3positionTb4b4b4.Te6edf3groundSpeedTb4b4b4,
Te6edf3groundTrack Tff7b72= Te6edf3positionTb4b4b4.Te6edf3groundTrackTb4b4b4,
Te6edf3precisionBits Tff7b72= Te6edf3positionTb4b4b4.Te6edf3precisionBitsTb4b4b4,
Tb4b4b4)
Tb4b4b4.Te6edf3takeIf Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3isValidTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4,
Te6edf3snr Tff7b72= Te6edf3snrTb4b4b4,
Te6edf3rssi Tff7b72= Te6edf3rssiTb4b4b4,
Te6edf3lastHeard Tff7b72= Te6edf3lastHeardTb4b4b4,
Te6edf3deviceMetrics Tff7b72=
Te6edf3DeviceMetricsTb4b4b4(
Te6edf3time Tff7b72= Te6edf3deviceTelemetryTb4b4b4.Te6edf3timeTb4b4b4,
Te6edf3batteryLevel Tff7b72= Te6edf3deviceMetricsTb4b4b4.Te6edf3batteryLevelTb4b4b4,
Te6edf3voltage Tff7b72= Te6edf3deviceMetricsTb4b4b4.Te6edf3voltageTb4b4b4,
Te6edf3channelUtilization Tff7b72= Te6edf3deviceMetricsTb4b4b4.Te6edf3channelUtilizationTb4b4b4,
Te6edf3airUtilTx Tff7b72= Te6edf3deviceMetricsTb4b4b4.Te6edf3airUtilTxTb4b4b4,
Te6edf3uptimeSeconds Tff7b72= Te6edf3deviceMetricsTb4b4b4.Te6edf3uptimeSecondsTb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3channel Tff7b72= Te6edf3channelTb4b4b4,
Te6edf3environmentMetrics Tff7b72=
Te6edf3EnvironmentMetricsTb4b4b4.Te6edf3fromTelemetryProtoTb4b4b4(
Te6edf3environmentTelemetryTb4b4b4.Te6edf3environmentMetricsTb4b4b4,
Te6edf3environmentTelemetryTb4b4b4.Te6edf3timeTb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3hopsAway Tff7b72= Te6edf3hopsAwayTb4b4b4,
Tb4b4b4)
Tb4b4b4}

Served by rngit 1.5.1 - Generated in 0.1s